package com.dongjiantong.farmrecords.mapper;

import com.dongjiantong.farmrecords.model.FarmRecordsImmunization;
import com.dongjiantong.mybatis.MyMapper;

import java.util.List;
import java.util.Map;

public interface FarmRecordsImmunizationMapper extends MyMapper<FarmRecordsImmunization> {
    /**
     * 根据条件查询列表
     * @param map
     * @return
     */
    List<FarmRecordsImmunization> selectByMap(Map map);

    /**
     * 根据条件查单个
     * @param map
     * @return
     */
    FarmRecordsImmunization selectOneByMap(Map map);

    /**
     * 新增一条记录
     * @param
     * @return
     */
    int createOne(FarmRecordsImmunization farmRecordsImmunization);

    /**
     * 根据单据前缀寻找最大单据号
     * @param prefix
     * @return
     */
    String findMaxNumber(String prefix);

    /**
     * 根据id 查询详情
     * @param id
     * @return
     */
    FarmRecordsImmunization selectById(Long id);

    /**
     * 养殖端查询列表
     * @param map
     * @return
     */
    List<FarmRecordsImmunization> selectListByStatus(Map<String, Object> map);

    /**
     * app政府端查询
     * @param map
     * @return
     */
    List<FarmRecordsImmunization> selectByMapApp(Map map);

    /**
     * 根据牛档案关联ids 查询对应的免疫次数
     * @param
     * @return
     */
    List<Map<String, Object>> selectImmunizationCount(Map<String,Object> map);

    /**
     * 根据养殖场ID和时间区间查询免疫次数
     * */
    Integer selectCountByFarmId(Map<String, Object> map);

    Integer updateEarNumberByCowRelateId(Map<String, Object> map);
}